<html>
<head><meta charset="utf-8"><title>issue-51818-share-buffer-on-simulate_block · t-compiler/wg-nll · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/index.html">t-compiler/wg-nll</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html">issue-51818-share-buffer-on-simulate_block</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="128847155"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128847155" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128847155">(Jun 29 2018 at 19:51)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> back into this, so, without reading further I saw you said it's used just once, so why don't just make it &amp;mut?</p>



<a name="128847156"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128847156" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128847156">(Jun 29 2018 at 19:51)</a>:</h4>
<p>hehe, stupid thought :P</p>



<a name="128847245"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128847245" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128847245">(Jun 29 2018 at 19:53)</a>:</h4>
<p>I mean, I was wondering why is it doing clone in the first place</p>



<a name="128847618"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128847618" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128847618">(Jun 29 2018 at 20:01)</a>:</h4>
<p>well we need a temporary buffer basically</p>



<a name="128847622"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128847622" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128847622">(Jun 29 2018 at 20:01)</a>:</h4>
<p>so as not to modify the original value</p>



<a name="128849412"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128849412" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128849412">(Jun 29 2018 at 20:39)</a>:</h4>
<p>ok, will check this</p>



<a name="128850074"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128850074" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128850074">(Jun 29 2018 at 20:56)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> I haven't jumped really into this task yet because this thing is still compiling your branch</p>



<a name="128850076"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128850076" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128850076">(Jun 29 2018 at 20:56)</a>:</h4>
<p>but just finished reading the issue</p>



<a name="128850077"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128850077" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128850077">(Jun 29 2018 at 20:56)</a>:</h4>
<p>there's something I don't understand</p>



<a name="128850084"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128850084" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128850084">(Jun 29 2018 at 20:57)</a>:</h4>
<p>I don't see how this is going to do any better</p>



<a name="128850099"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128850099" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128850099">(Jun 29 2018 at 20:57)</a>:</h4>
<p>I mean, if I understood correctly <code>simulate_block</code> is being called only from <a href="https://github.com/rust-lang/rust/blob/master/src/librustc_mir/borrow_check/nll/type_check/liveness.rs#L52-L54" target="_blank" title="https://github.com/rust-lang/rust/blob/master/src/librustc_mir/borrow_check/nll/type_check/liveness.rs#L52-L54">https://github.com/rust-lang/rust/blob/master/src/librustc_mir/borrow_check/nll/type_check/liveness.rs#L52-L54</a> and that function pass down to <code>simulate_block</code></p>



<a name="128850101"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128850101" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128850101">(Jun 29 2018 at 20:57)</a>:</h4>
<p>the thing is, each call is with a different <code>bb</code>, so I don't see any reuse because each call will build a different thing</p>



<a name="128850218"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128850218" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128850218">(Jun 29 2018 at 21:00)</a>:</h4>
<p>so I'd be basically moving the clone call to the caller and passing that down</p>



<a name="128850227"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128850227" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128850227">(Jun 29 2018 at 21:00)</a>:</h4>
<p>with no reuse, because I'd need to do that inside the loop</p>



<a name="128872637"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128872637" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128872637">(Jun 30 2018 at 09:25)</a>:</h4>
<blockquote>
<p>the thing is, each call is with a different <code>bb</code>, so I don't see any reuse because each call will build a different thing</p>
</blockquote>
<p>all basic blocks can re-use the same buffer</p>



<a name="128872676"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128872676" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128872676">(Jun 30 2018 at 09:26)</a>:</h4>
<p>where we now clone the <code>foo[bb]</code>, we would want to use <code>overwrite</code> to write the data in</p>



<a name="128872678"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128872678" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128872678">(Jun 30 2018 at 09:26)</a>:</h4>
<p>tbh, I don't know if it will be much of a win or not</p>



<a name="128872680"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128872680" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128872680">(Jun 30 2018 at 09:26)</a>:</h4>
<p>it's just saving an allocation basically</p>



<a name="128872681"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128872681" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128872681">(Jun 30 2018 at 09:26)</a>:</h4>
<p>(and a free)</p>



<a name="128883164"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128883164" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128883164">(Jun 30 2018 at 14:49)</a>:</h4>
<p>I know that's very easy what we need to do but I'm still not catching exactly what you meant</p>



<a name="128883167"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128883167" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128883167">(Jun 30 2018 at 14:49)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> to be 100% specific</p>



<a name="128883215"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128883215" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128883215">(Jun 30 2018 at 14:50)</a>:</h4>
<p>I was getting that you mean to use a buffer with <code>self.outs[bb]</code> content but that doesn't make any sense to me, that's why I have doubts about exactly what you want to do</p>



<a name="128883222"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128883222" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128883222">(Jun 30 2018 at 14:50)</a>:</h4>
<p>if you mean to use a buffer with <code>self.outs</code>, makes sense :)</p>



<a name="128883233"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128883233" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128883233">(Jun 30 2018 at 14:51)</a>:</h4>
<p>if the buffer is about <code>self.outs[bb]</code> I think we would be just moving things around because there's no reuse of the outs for a specific basic block</p>



<a name="128883274"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128883274" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128883274">(Jun 30 2018 at 14:52)</a>:</h4>
<p>what is reused is <code>self.outs</code> being used on each call with a different <code>bb</code></p>



<a name="128906121"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128906121" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128906121">(Jul 01 2018 at 03:43)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> forgot to share a link with my changes to check if that was the idea you had ...</p>



<a name="128906123"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128906123" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128906123">(Jul 01 2018 at 03:43)</a>:</h4>
<p><a href="https://github.com/spastorino/rust/commit/986bb2a81ee58a35b5deb729fb8f1cdf53b774d3" target="_blank" title="https://github.com/spastorino/rust/commit/986bb2a81ee58a35b5deb729fb8f1cdf53b774d3">https://github.com/spastorino/rust/commit/986bb2a81ee58a35b5deb729fb8f1cdf53b774d3</a></p>



<a name="128914977"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128914977" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128914977">(Jul 01 2018 at 09:36)</a>:</h4>
<p><span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> I left various comments on the commit — the key differences are:</p>
<ul>
<li>the buffer you made is too big -- it contains the results for all blocks, but it only needs to be the right size for one block</li>
<li>the buffer can be shared across blocks</li>
<li>the regular/drop computation don't need distinct buffers</li>
</ul>



<a name="128921575"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921575" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921575">(Jul 01 2018 at 13:47)</a>:</h4>
<div class="codehilite"><pre><span></span>you don&#39;t need a separate regular/drops buffer -- the buffer is just a bitset of local variables, and the set of local variables comes from the MIR, it is the same for the regular/drop computation. If we add the helper I suggested below, this would be something like:

let mut simulate_buffer = self.liveness.make_simulate_buffer(self.mir);
</pre></div>



<a name="128921578"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921578" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921578">(Jul 01 2018 at 13:47)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> I thought we talked that regular.outs was the set of live locals when you only consider regular uses</p>



<a name="128921617"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921617" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921617">(Jul 01 2018 at 13:48)</a>:</h4>
<p>and drop.outs was the set of live locals you consider for drops</p>



<a name="128921618"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921618" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921618">(Jul 01 2018 at 13:48)</a>:</h4>
<p>that is correct</p>



<a name="128921620"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921620" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921620">(Jul 01 2018 at 13:48)</a>:</h4>
<p>however</p>



<a name="128921621"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921621" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921621">(Jul 01 2018 at 13:48)</a>:</h4>
<p>that's why I cloned regulars and drops</p>



<a name="128921622"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921622" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921622">(Jul 01 2018 at 13:48)</a>:</h4>
<p>both are sets of <strong>variables</strong></p>



<a name="128921623"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921623" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921623">(Jul 01 2018 at 13:48)</a>:</h4>
<p>that is, the "domain" of each set is the same</p>



<a name="128921625"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921625" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921625">(Jul 01 2018 at 13:48)</a>:</h4>
<p>and the buffer is just a temporary set over that (same) domain</p>



<a name="128921626"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921626" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921626">(Jul 01 2018 at 13:49)</a>:</h4>
<p>more concretely, it is a bit set</p>



<a name="128921631"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921631" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921631">(Jul 01 2018 at 13:49)</a>:</h4>
<p>and the point is that the number of bits in both cases is the same</p>



<a name="128921632"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921632" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921632">(Jul 01 2018 at 13:49)</a>:</h4>
<p>you meant that in the method this thing is overwritten?</p>



<a name="128921633"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921633" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921633">(Jul 01 2018 at 13:49)</a>:</h4>
<p>(but different bits will be set / unset)</p>



<a name="128921634"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921634" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921634">(Jul 01 2018 at 13:49)</a>:</h4>
<p>do you mean "overwritten"?</p>



<a name="128921635"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921635" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921635">(Jul 01 2018 at 13:49)</a>:</h4>
<p>if so, yes</p>



<a name="128921636"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921636" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921636">(Jul 01 2018 at 13:49)</a>:</h4>
<p>yes, overwritten</p>



<a name="128921637"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921637" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921637">(Jul 01 2018 at 13:49)</a>:</h4>
<p>basically what that method (<code>simulate_block()</code>) does is something like this:</p>



<a name="128921638"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921638" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921638">(Jul 01 2018 at 13:49)</a>:</h4>
<p>ahhh ok ok ok, now makes sense</p>



<a name="128921687"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921687" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921687">(Jul 01 2018 at 13:50)</a>:</h4>
<p>it never made sense until I hear that things are overwritten :)</p>



<a name="128921688"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921688" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921688">(Jul 01 2018 at 13:50)</a>:</h4>
<div class="codehilite"><pre><span></span>let mut buffer = starting_value.clone();

for each statement in reverse order {
    mutate(&amp;mut buffer);
    callback(&amp;buffer);
}
</pre></div>



<a name="128921689"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921689" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921689">(Jul 01 2018 at 13:50)</a>:</h4>
<p>yes yes</p>



<a name="128921690"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921690" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921690">(Jul 01 2018 at 13:50)</a>:</h4>
<p>now makes sense</p>



<a name="128921692"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921692" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921692">(Jul 01 2018 at 13:50)</a>:</h4>
<p>that's why I wasn't following</p>



<a name="128921693"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921693" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921693">(Jul 01 2018 at 13:50)</a>:</h4>
<p>and now we will do something like:</p>
<div class="codehilite"><pre><span></span>let buffer = allocate();
...
loop {
  copy_initial_values(&amp;mut buffer);

  for each statement in reverse order {
    mutate(&amp;mut buffer);
    callback(&amp;buffer);
  }
}
</pre></div>



<a name="128921695"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921695" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921695">(Jul 01 2018 at 13:50)</a>:</h4>
<p>yeah, ok</p>



<a name="128921702"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921702" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921702">(Jul 01 2018 at 13:51)</a>:</h4>
<p>I knew things were modified but not that the buffer was entirely overwritten</p>



<a name="128921703"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921703" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921703">(Jul 01 2018 at 13:51)</a>:</h4>
<p>tbh I'm not sure if it will be a win :) but it can't hurt I guess</p>



<a name="128921704"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921704" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921704">(Jul 01 2018 at 13:51)</a>:</h4>
<p>I mean</p>



<a name="128921705"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921705" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921705">(Jul 01 2018 at 13:51)</a>:</h4>
<p>mainly because that buffer starts with the set of live locals at the end of the block</p>



<a name="128921706"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921706" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921706">(Jul 01 2018 at 13:51)</a>:</h4>
<p>njn found that there were a lot more allocations in the NLL path, so part of this is a drive to shave those off and see if it helps</p>



<a name="128921707"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921707" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921707">(Jul 01 2018 at 13:51)</a>:</h4>
<p>so I never imagined that those things were changed</p>



<a name="128921756"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921756" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921756">(Jul 01 2018 at 13:53)</a>:</h4>
<p>so ... to be 100% sure</p>



<a name="128921795"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921795" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921795">(Jul 01 2018 at 13:54)</a>:</h4>
<p>if this bitset has 50 bits of locals set, all those 50 bits will be changed?</p>



<a name="128921798"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921798" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921798">(Jul 01 2018 at 13:54)</a>:</h4>
<p>I'm going to check the code for some reason I was kind of skeptical of that :P</p>



<a name="128921799"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921799" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921799">(Jul 01 2018 at 13:55)</a>:</h4>
<p>because if everything is changed why that doesn't use a new set and start filling it?</p>



<a name="128921851"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921851" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921851">(Jul 01 2018 at 13:57)</a>:</h4>
<p>I am confused</p>



<a name="128921852"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921852" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921852">(Jul 01 2018 at 13:57)</a>:</h4>
<p>I mean I thikn the answer is yes?</p>



<a name="128921892"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921892" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921892">(Jul 01 2018 at 13:58)</a>:</h4>
<p>but I'm not sure <em>exactly</em> what you are asking</p>



<a name="128921893"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921893" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921893">(Jul 01 2018 at 13:58)</a>:</h4>
<p>changed by what?</p>



<a name="128921901"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921901" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921901">(Jul 01 2018 at 13:59)</a>:</h4>
<p>:(</p>



<a name="128921902"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921902" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921902">(Jul 01 2018 at 13:59)</a>:</h4>
<p>hehe</p>



<a name="128921919"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921919" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921919">(Jul 01 2018 at 14:00)</a>:</h4>
<p>I've been having a lot of english/understanding issues with this task :(</p>



<a name="128921949"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921949" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921949">(Jul 01 2018 at 14:00)</a>:</h4>
<p>hmm</p>



<a name="128921952"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921952" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921952">(Jul 01 2018 at 14:00)</a>:</h4>
<p>let me try to explain</p>



<a name="128921953"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128921953" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128921953">(Jul 01 2018 at 14:00)</a>:</h4>
<p>Before:</p>
<div class="codehilite"><pre><span></span>loop {
  let mut buffer = starting_value.clone(); // same as:
  // let mut buffer = buffer.allocate(num_locals);
  // copy_initial_values(&amp;mut buffer, &amp;starting_value);

  for each statement in reverse order {
    mutate(&amp;mut buffer);
    callback(&amp;buffer);
  }
}
</pre></div>


<p>after:</p>
<div class="codehilite"><pre><span></span>let buffer = allocate(num_locals);
...
loop {
  copy_initial_values(&amp;mut buffer, &amp;starting_value);

  for each statement in reverse order {
    mutate(&amp;mut buffer);
    callback(&amp;buffer);
  }
}
</pre></div>



<a name="128922020"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922020" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922020">(Jul 01 2018 at 14:02)</a>:</h4>
<p>I see what you mean</p>



<a name="128922023"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922023" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922023">(Jul 01 2018 at 14:03)</a>:</h4>
<p>the key is ...</p>



<a name="128922026"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922026" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922026">(Jul 01 2018 at 14:03)</a>:</h4>
<p><code>buffer.overwrite(&amp;self.outs[block]);</code></p>



<a name="128922080"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922080" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922080">(Jul 01 2018 at 14:04)</a>:</h4>
<p>(note: this only makes sense because we are using a dense bitset)</p>



<a name="128922081"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922081" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922081">(Jul 01 2018 at 14:04)</a>:</h4>
<p>the problem was ... when you said reuse I've tried to reuse values and you meant reuse memory</p>



<a name="128922082"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922082" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922082">(Jul 01 2018 at 14:04)</a>:</h4>
<p>since then we allocate same amount no matter what</p>



<a name="128922083"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922083" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922083">(Jul 01 2018 at 14:04)</a>:</h4>
<p>I didn't see any way to reuse values</p>



<a name="128922092"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922092" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922092">(Jul 01 2018 at 14:05)</a>:</h4>
<p>ah, I see. Yes.</p>



<a name="128922093"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922093" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922093">(Jul 01 2018 at 14:05)</a>:</h4>
<p>Correct.</p>



<a name="128922188"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922188" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922188">(Jul 01 2018 at 14:08)</a>:</h4>
<p>will change this in a bit if I have time :)</p>



<a name="128922192"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922192" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922192">(Jul 01 2018 at 14:08)</a>:</h4>
<p>was your PR, the one from where I was starting off, merged?</p>



<a name="128922211"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922211" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922211">(Jul 01 2018 at 14:09)</a>:</h4>
<p>I think you mean <a href="https://github.com/rust-lang/rust/pull/51896" target="_blank" title="https://github.com/rust-lang/rust/pull/51896">https://github.com/rust-lang/rust/pull/51896</a> ?</p>



<a name="128922212"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922212" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922212">(Jul 01 2018 at 14:09)</a>:</h4>
<p>if so, not yet</p>



<a name="128922257"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922257" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922257">(Jul 01 2018 at 14:10)</a>:</h4>
<p>hmm looks like it has some error too</p>



<a name="128922259"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922259" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922259">(Jul 01 2018 at 14:10)</a>:</h4>
<p>will fix</p>



<a name="128922405"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128922405" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128922405">(Jul 01 2018 at 14:16)</a>:</h4>
<p>ok</p>



<a name="128930613"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128930613" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128930613">(Jul 01 2018 at 19:32)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> <a href="https://github.com/rust-lang/rust/commit/9cc337339c7730335364079cd94ed92f58efa046" target="_blank" title="https://github.com/rust-lang/rust/commit/9cc337339c7730335364079cd94ed92f58efa046">https://github.com/rust-lang/rust/commit/9cc337339c7730335364079cd94ed92f58efa046</a></p>



<a name="128970569"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970569" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970569">(Jul 02 2018 at 15:35)</a>:</h4>
<p><span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> that looks right to me</p>



<a name="128970577"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970577" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970577">(Jul 02 2018 at 15:35)</a>:</h4>
<p><span class="emoji emoji-1f44d" title="+1">:+1:</span></p>



<a name="128970579"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970579" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970579">(Jul 02 2018 at 15:35)</a>:</h4>
<p><code>overwrite</code> should exist on master; maybe not on that branch. You can use <code>IdxSet::clone_from(...)</code> if not</p>



<a name="128970586"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970586" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970586">(Jul 02 2018 at 15:35)</a>:</h4>
<p>but that method got renamed to <code>overwrite</code></p>



<a name="128970628"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970628" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970628">(Jul 02 2018 at 15:36)</a>:</h4>
<p>but clone_from does some clones so it allocates stuff</p>



<a name="128970630"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970630" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970630">(Jul 02 2018 at 15:36)</a>:</h4>
<p>it does not</p>



<a name="128970632"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970632" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970632">(Jul 02 2018 at 15:36)</a>:</h4>
<p>I wanted to avoid allocations</p>



<a name="128970634"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970634" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970634">(Jul 02 2018 at 15:36)</a>:</h4>
<p>no?</p>



<a name="128970635"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970635" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970635">(Jul 02 2018 at 15:36)</a>:</h4>
<p>not <code>IdxSet::clone_from</code>, specifically</p>



<a name="128970643"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970643" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970643">(Jul 02 2018 at 15:36)</a>:</h4>
<p>but there is another method (<code>Clone::clone_from</code>) that does</p>



<a name="128970644"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970644" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970644">(Jul 02 2018 at 15:36)</a>:</h4>
<p>this is why we renamed <code>IdxSet::clone_from</code></p>



<a name="128970647"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970647" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970647">(Jul 02 2018 at 15:37)</a>:</h4>
<p>in <a href="https://github.com/rust-lang/rust/pull/51869" target="_blank" title="https://github.com/rust-lang/rust/pull/51869">https://github.com/rust-lang/rust/pull/51869</a></p>



<a name="128970802"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970802" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970802">(Jul 02 2018 at 15:39)</a>:</h4>
<p>I see</p>



<a name="128970864"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970864" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970864">(Jul 02 2018 at 15:40)</a>:</h4>
<p>well, does it worth to change the code? no matter what I do is going to conflict in master</p>



<a name="128970875"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970875" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970875">(Jul 02 2018 at 15:40)</a>:</h4>
<p>unless I do this stuff against master itself</p>



<a name="128970882"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128970882" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128970882">(Jul 02 2018 at 15:40)</a>:</h4>
<p>instead of your branch</p>



<a name="128971002"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128971002" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128971002">(Jul 02 2018 at 15:42)</a>:</h4>
<p>I suspect you could rebase on to master and it would be fine, else wait for my branch to land</p>



<a name="128971004"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128971004" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128971004">(Jul 02 2018 at 15:42)</a>:</h4>
<p>the PR is r+'d now</p>



<a name="128971283"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128971283" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128971283">(Jul 02 2018 at 15:46)</a>:</h4>
<p>yeah :)</p>



<a name="128971300"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128971300" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128971300">(Jul 02 2018 at 15:47)</a>:</h4>
<p>will wait</p>



<a name="128971303"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128971303" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128971303">(Jul 02 2018 at 15:47)</a>:</h4>
<p>ping me when it lands</p>



<a name="128971374"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128971374" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128971374">(Jul 02 2018 at 15:48)</a>:</h4>
<p>ok, I'm planning to push a bit harder on triage and think things over</p>



<a name="128971377"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128971377" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128971377">(Jul 02 2018 at 15:48)</a>:</h4>
<p>in terms of "what's next"</p>



<a name="128977354"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128977354" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128977354">(Jul 02 2018 at 17:40)</a>:</h4>
<p><span class="emoji emoji-1f44d" title="+1">:+1:</span></p>



<a name="128990484"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128990484" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128990484">(Jul 02 2018 at 22:08)</a>:</h4>
<p><span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> you could rebase now</p>



<a name="128990986"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128990986" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128990986">(Jul 02 2018 at 22:21)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> <a href="https://github.com/rust-lang/rust/pull/52007" target="_blank" title="https://github.com/rust-lang/rust/pull/52007">https://github.com/rust-lang/rust/pull/52007</a></p>



<a name="128995153"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128995153" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128995153">(Jul 03 2018 at 00:18)</a>:</h4>
<p><span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> [00:04:32] tidy error: /checkout/src/librustc_mir/util/liveness.rs:169: line longer than 100 chars</p>



<a name="128995183"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128995183" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128995183">(Jul 03 2018 at 00:19)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> facepalm, yeah just saw it and was fixing it</p>



<a name="128995283"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128995283" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128995283">(Jul 03 2018 at 00:22)</a>:</h4>
<p>pushed</p>



<a name="128995294"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/128995294" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#128995294">(Jul 03 2018 at 00:23)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> now it's fine :)</p>



<a name="129098688"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129098688" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129098688">(Jul 04 2018 at 18:35)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> rebased <a href="https://github.com/rust-lang/rust/pull/52007" target="_blank" title="https://github.com/rust-lang/rust/pull/52007">https://github.com/rust-lang/rust/pull/52007</a></p>



<a name="129098812"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129098812" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129098812">(Jul 04 2018 at 18:38)</a>:</h4>
<p><span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> <a href="https://github.com/rust-lang/rust/pull/52007#pullrequestreview-134453710" target="_blank" title="https://github.com/rust-lang/rust/pull/52007#pullrequestreview-134453710">https://github.com/rust-lang/rust/pull/52007#pullrequestreview-134453710</a></p>



<a name="129099021"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129099021" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129099021">(Jul 04 2018 at 18:44)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> ...</p>



<a name="129099025"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129099025" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129099025">(Jul 04 2018 at 18:44)</a>:</h4>
<div class="codehilite"><pre><span></span>    /// Create an empty `LocalSet` buffer to be mutably shared accross different calls to
    /// `simulate_block`, hence reducing memory allocation.
</pre></div>



<a name="129099027"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129099027" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129099027">(Jul 04 2018 at 18:44)</a>:</h4>
<p>sounds like proper english?</p>



<a name="129099032"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129099032" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129099032">(Jul 04 2018 at 18:44)</a>:</h4>
<p><span class="emoji emoji-1f61b" title="stuck out tongue">:stuck_out_tongue:</span></p>



<a name="129099113"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129099113" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129099113">(Jul 04 2018 at 18:47)</a>:</h4>
<p>yep :)</p>



<a name="129099116"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129099116" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129099116">(Jul 04 2018 at 18:47)</a>:</h4>
<p>pushed again</p>



<a name="129099189"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129099189" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129099189">(Jul 04 2018 at 18:48)</a>:</h4>
<p>I'm wondering if I should just r+</p>



<a name="129099190"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129099190" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129099190">(Jul 04 2018 at 18:49)</a>:</h4>
<p>I guess it might not help</p>



<a name="129099197"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129099197" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129099197">(Jul 04 2018 at 18:49)</a>:</h4>
<p>that would not, really, surprise me very much</p>



<a name="129100569"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129100569" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129100569">(Jul 04 2018 at 19:23)</a>:</h4>
<p>hehe yeah</p>



<a name="129132164"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129132164" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129132164">(Jul 05 2018 at 11:29)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> <a href="https://perf.rust-lang.org/compare.html?start=860d169474acabdc53b9a698f8ce02eba7e0daeb&amp;end=00bcc44fb92c28465c727881355c3235a56a4045&amp;stat=instructions%3Au" target="_blank" title="https://perf.rust-lang.org/compare.html?start=860d169474acabdc53b9a698f8ce02eba7e0daeb&amp;end=00bcc44fb92c28465c727881355c3235a56a4045&amp;stat=instructions%3Au">https://perf.rust-lang.org/compare.html?start=860d169474acabdc53b9a698f8ce02eba7e0daeb&amp;end=00bcc44fb92c28465c727881355c3235a56a4045&amp;stat=instructions%3Au</a></p>



<a name="129132477"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129132477" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129132477">(Jul 05 2018 at 11:34)</a>:</h4>
<p>hmm, kind of looks like noise</p>



<a name="129132485"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129132485" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129132485">(Jul 05 2018 at 11:35)</a>:</h4>
<p>I think I'm inclined not to land it</p>



<a name="129132498"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129132498" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129132498">(Jul 05 2018 at 11:35)</a>:</h4>
<p>if it doesn't really <em>help</em> performance, it's mildly less clean, and it could make future refactorings more annoying</p>



<a name="129132502"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129132502" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129132502">(Jul 05 2018 at 11:35)</a>:</h4>
<p>what do you think?</p>



<a name="129137623"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129137623" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129137623">(Jul 05 2018 at 13:26)</a>:</h4>
<p>agreed</p>



<a name="129138342"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block/near/129138342" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-51818-share-buffer-on-simulate_block.html#129138342">(Jul 05 2018 at 13:37)</a>:</h4>
<p>ok, closed</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>